﻿using System;
using System.Collections;
using System.Configuration;
using System.Data;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Xml.Linq;
using System.Net.Mail;

public partial class ForgotPassword : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        int count = (int)Session["EnterUsername_Failed"];
        if (count >= 5)
        {
            lblContent.Text = "<table width='70%' border='0' cellpadding='4' cellspacing='0' align='center'><tr><td class='table_header'>Quên mật khẩu</td></tr><tr><td align='center' style='font-weight:bold'>Bạn đã nhập sai 5 lần. Tạm thời bạn không thể sử dụng chức năng này.<br/><br/><a href='Default.aspx' class='linkStyle'>Quay về trang chủ?</a></td></tr></table>";
        }

    }
    protected void btnSubmit_Click(object sender, EventArgs e)
    {
        int count = (int)Session["EnterUsername_Failed"];
        if (count < 5)
        {
            String Username = txtUserName.Text;
            String Email = txtEmail.Text;
            DTO.NguoiDungDto user = BUS.NguoiDungBus.LayNguoiDungTheoTen(Username);
            if (user == null)
            {
                count++;
                Session["EnterUsername_Failed"] = count;
                lblUsernameErr.Text = "<span class='invalidMessage'>Tài khoản không tồn tại</span>";
                return;
            }
            else if (Email != user.Email)
            {
                count++;
                Session["EnterUsername_Failed"] = count;
                lblUsernameErr.Text = "";
                lblEmailErr.Text = "<span class='invalidMessage'>Email không đúng</span>";
                return;
            }

            String newPass = BUS.NguoiDungBus.GeneratePassword();
            try
            {
                BUS.NguoiDungBus.ThaydoiMatKhauNguoiDung(user, newPass);
                MailMessage message = new MailMessage();
                message.IsBodyHtml = true;
                message.Subject = "Fashion Shop";
                message.Body = "Xin Chào " + user.HoTen + "<br/>";
                message.Body += "Mật khẩu của bạn đã được thay đổi. Mời bạn sử dụng mật khẩu mới để đăng nhập.<br/>";
                message.Body += "Mật khẩu mới: <span style='font-weight: bold; color: #DA5721'>" + newPass + "</span><br/>";
                message.Body += "Quay về trang chủ: <a href='http://localhost:3527/Website1/Default.aspx'>http://localhost:3527/Website1/Default.aspx</a>";
                message.To.Add(user.Email);
                BUS.Mail.MailSender mailSender = new BUS.Mail.MailSender();
                mailSender.SendMail(message);
            }
            catch (Exception ex)
            {
                throw ex;
            }
            lblContent.Text = "<table width='70%' border='0' cellpadding='4' cellspacing='0' align='center'><tr><td class='table_header'>Quên mật khẩu</td></tr><tr><td align='center' style='font-weight:bold'>Mật khẩu của bạn đã được thay đổi. Mời bạn kiểm tra mail và sử dụng mật khẩu mới để đăng nhập.<br/><br/><a href='Default.aspx' class='linkStyle'>Quay về trang chủ?</a></td></tr></table>";
        }
        else
        {
            lblContent.Text = "<table width='70%' border='0' cellpadding='4' cellspacing='0' align='center'><tr><td class='table_header'>Quên mật khẩu</td></tr><tr><td align='center' style='font-weight:bold'>Bạn đã nhập sai 5 lần. Tạm thời bạn không thể sử dụng chức năng này.<br/><br/><a href='Default.aspx' class='linkStyle'>Quay về trang chủ?</a></td></tr></table>";
            return;
        }
    }
   
}
